using Furion.Xunit;
using Microsoft.Extensions.DependencyInjection;
using System.Text;
using Xunit;

// 配置启动类类型，第一个参数是 TestProgram 类完整限定名，第二个参数是当前项目程序集名称
[assembly: TestFramework("Application.Test.TestProgram", "Application.Test")]

namespace Application.Test;

/// <summary>
/// 单元测试启动类
/// </summary>
public class TestProgram : TestStartup
{
    public TestProgram(Xunit.Abstractions.IMessageSink messageSink) : base(messageSink)
    {
        // 设置控制台编码为UTF-8，解决中文乱码问题
        Console.OutputEncoding = Encoding.UTF8;
        
        // 初始化 Furion
        Serve.RunNative(services =>
        {
            // 注册远程服务
            services.AddHttpRemote();
        });  // 建议配置 urls: Serve.IdleHost.Urls
    }
}